package com.xzwk.subject.domain.servcie;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xzwk.subject.domain.dto.SubjectCategoryDTO;
import com.xzwk.subject.domain.entity.SubjectCategoryBO;
import com.xzwk.subject.infra.basic.entity.SubjectCategory;
import java.io.Serializable;
import java.util.List;

public interface SubjectCategoryDomainService {

  void add(SubjectCategoryBO subjectCategoryBO);

  Object page(Page<SubjectCategory> page, QueryWrapper<SubjectCategory> subjectCategoryQueryWrapper);

  SubjectCategoryDTO getById(Serializable id);

  Boolean save(SubjectCategoryBO subjectCategoryBO);

  Boolean updateById(SubjectCategoryBO subjectCategory);

  Boolean removeByIds(List<Long> idList);

  List<SubjectCategoryBO> queryPrimaryCategory(Long parentId);
}
